package DAO;

import java.util.List;

import java.util.Calendar;

import Pojo.*;

/**
 * Interface para o DAO de atividades. Toda implementação dessa interface deve implementar os métodos abaixo.
 * @author Ronan Lopes
 *
 */
public interface AtividadeDao {
	/**
	 * Adicionar uma Atividade à lista de Atividades
	 * @param atividade
	 * @return true ou false indicando sucesso ou não
	 */
	public boolean adicionarAtividade(Atividade atividade);
	
	/**
	 * Remover Atividade da lista de Atividades
	 * @param atividade
	 * @return true ou false indicando sucesso ou não
	 */
	public boolean removerAtividade(Atividade atividade);
	
	/**
	 * Pesquisa de Atividades passando o nome
	 * @param nome
	 * @return Lista de Atividades cujos nomes são iguais ao nome passado. A lista pode vir vazia indicando que não há nenhuma atividade com esse nome.  
	 */
	public List<Atividade> procurarPorNome(String nome);
	
	/**
	 * Pesquisa de Atividades passando uma data
	 * @param data
	 * @return Lista de Atividades cujas data são iguais à data passada. A lista pode vir vazia indicando que não há nenhuma atividade nesta data.
	 */
	public List<Atividade> procurarPorData(Calendar data);
}
